home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / aapain1a / form1.frm next >
Text File  |  1998-10-10  |  7KB  |  231 lines

  1. VERSION 5.00
  2. Begin VB.Form Form1 
  3.    BackColor       =   &H00FFFFFF&
  4.    BorderStyle     =   5  'Sizable ToolWindow
  5.    Caption         =   "Paint"
  6.    ClientHeight    =   7050
  7.    ClientLeft      =   165
  8.    ClientTop       =   690
  9.    ClientWidth     =   9210
  10.    FillStyle       =   0  'Solid
  11.    LinkTopic       =   "Form1"
  12.    MaxButton       =   0   'False
  13.    MinButton       =   0   'False
  14.    MousePointer    =   2  'Cross
  15.    ScaleHeight     =   7050
  16.    ScaleWidth      =   9210
  17.    ShowInTaskbar   =   0   'False
  18.    StartUpPosition =   3  'Windows Default
  19.    Begin VB.Menu mnuFile 
  20.       Caption         =   "&File"
  21.       Begin VB.Menu mnuFileExit 
  22.          Caption         =   "E&xit"
  23.       End
  24.    End
  25.    Begin VB.Menu mnuPic 
  26.       Caption         =   "&Picture"
  27.       Begin VB.Menu mnupicClear 
  28.          Caption         =   "&Clear"
  29.       End
  30.    End
  31.    Begin VB.Menu mnuToolbar 
  32.       Caption         =   "Toolbar"
  33.       Begin VB.Menu mnutbshow 
  34.          Caption         =   "Show"
  35.       End
  36.       Begin VB.Menu mnutbhide 
  37.          Caption         =   "Hide"
  38.       End
  39.    End
  40. End
  41. Attribute VB_Name = "Form1"
  42. Attribute VB_GlobalNameSpace = False
  43. Attribute VB_Creatable = False
  44. Attribute VB_PredeclaredId = True
  45. Attribute VB_Exposed = False
  46. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  47. 'Paint v1.0
  48. 'Author: Dustin Davis
  49. 'Bootleg Software Inc.
  50. 'http://www.warpnet.org/bsi
  51. '
  52. 'This is some simple code to draw pixels on the screen! There are diffrent
  53. 'brush settings, block - small, medium and large, also, star - small, med. and large
  54. 'This is mostly for anyone looking to do something like this. Kind of small and
  55. 'doesnt have very many features, but you can add them yourself!
  56. 'please do not steal this code! If you use it, please give proper credit
  57. 'enjoy!
  58. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  59.  
  60. Public pBrush As Integer 'for the brush type. 1-6
  61. Public bColor As Long 'back color
  62. Public pColor As Long 'brush color
  63.  
  64. Private Sub Form_DblClick()
  65. 'popup menu
  66. Form1.PopupMenu mnuPic
  67. End Sub
  68.  
  69. Private Sub Form_Load()
  70. 'standard place settings
  71. Form1.Top = 0
  72. Form1.Left = Screen.Width / 4
  73. Form2.Visible = True
  74. pColor = 0 'set brush color to black
  75. bColor = Form1.BackColor 'set bcolor to proper color setting
  76. pBrush = 1 'set brush size
  77. End Sub
  78.  
  79. Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  80. On Error GoTo errErrors
  81. 'this is what makes things go!
  82. Dim i As Long
  83. If Button = 1 Then 'if left button pushed
  84.     If pBrush = 1 Then
  85.         'small block brush
  86.         PSet (X, Y), pColor
  87.         i = 0
  88.         Do
  89.             DoEvents
  90.             PSet (X + i, Y), pColor
  91.             PSet (X + i, Y - i), pColor
  92.             PSet (X + i, Y + i), pColor
  93.             PSet (X, Y + i), pColor
  94.             PSet (X - i, Y), pColor
  95.             PSet (X - i, Y - i), pColor
  96.             PSet (X - i, Y + i), pColor
  97.             PSet (X, Y - i), pColor
  98.             i = i + 1
  99.         Loop Until i = 10
  100.     ElseIf pBrush = 2 Then
  101.         'medium block brush
  102.         PSet (X, Y), pColor
  103.         i = 0
  104.         Do
  105.             DoEvents
  106.             PSet (X + i, Y), pColor
  107.             PSet (X + i, Y - i), pColor
  108.             PSet (X + i, Y + i), pColor
  109.             PSet (X, Y + i), pColor
  110.             PSet (X - i, Y), pColor
  111.             PSet (X - i, Y - i), pColor
  112.             PSet (X - i, Y + i), pColor
  113.             PSet (X, Y - i), pColor
  114.             i = i + 1
  115.         Loop Until i = 25
  116.     ElseIf pBrush = 3 Then
  117.     'large block brush
  118.         PSet (X, Y), pColor
  119.         i = 0
  120.         Do
  121.             DoEvents
  122.             PSet (X + i, Y), pColor
  123.             PSet (X + i, Y - i), pColor
  124.             PSet (X + i, Y + i), pColor
  125.             PSet (X, Y + i), pColor
  126.             PSet (X - i, Y), pColor
  127.             PSet (X - i, Y - i), pColor
  128.             PSet (X - i, Y + i), pColor
  129.             PSet (X, Y - i), pColor
  130.             i = i + 1
  131.         Loop Until i = 40
  132.     ElseIf pBrush = 4 Then
  133.         'small star brush
  134.         PSet (X, Y), pColor
  135.         i = 0
  136.         Do
  137.             DoEvents
  138.             PSet (X + i, Y), pColor
  139.             PSet (X, Y + i), pColor
  140.             PSet (X - i, Y), pColor
  141.             PSet (X, Y - i), pColor
  142.             PSet (X + i, Y + i), pColor
  143.             PSet (X - i, Y - i), pColor
  144.             PSet (X + i + i, Y + i + i), pColor
  145.             PSet (X - i - i, Y - i - i), pColor
  146.             i = i + 1
  147.         Loop Until i = 10
  148.     ElseIf pBrush = 5 Then
  149.         'medium star brush
  150.         PSet (X, Y), pColor
  151.         i = 0
  152.         Do
  153.             DoEvents
  154.             PSet (X + i, Y), pColor
  155.             PSet (X, Y + i), pColor
  156.             PSet (X - i, Y), pColor
  157.             PSet (X, Y - i), pColor
  158.             PSet (X + i, Y + i), pColor
  159.             PSet (X - i, Y - i), pColor
  160.             PSet (X + i + i, Y + i + i), pColor
  161.             PSet (X - i - i, Y - i - i), pColor
  162.             i = i + 1
  163.         Loop Until i = 20
  164.     ElseIf pBrush = 6 Then
  165.         'large star brush
  166.         PSet (X, Y), pColor
  167.         i = 0
  168.         Do
  169.             DoEvents
  170.             PSet (X + i, Y), pColor
  171.             PSet (X, Y + i), pColor
  172.             PSet (X - i, Y), pColor
  173.             PSet (X, Y - i), pColor
  174.             PSet (X + i, Y + i), pColor
  175.             PSet (X - i, Y - i), pColor
  176.             PSet (X + i + i, Y + i + i), pColor
  177.             PSet (X - i - i, Y - i - i), pColor
  178.             i = i + 1
  179.         Loop Until i = 40
  180.     End If
  181. ElseIf Button = 2 Then
  182.     'this is the eraser!
  183.     PSet (X, Y), pColor
  184.         i = 0
  185.         Do
  186.             DoEvents
  187.             PSet (X + i, Y), bColor
  188.             PSet (X + i, Y - i), bColor
  189.             PSet (X + i, Y + i), bColor
  190.             PSet (X, Y + i), bColor
  191.             PSet (X - i, Y), bColor
  192.             PSet (X - i, Y - i), bColor
  193.             PSet (X - i, Y + i), bColor
  194.             PSet (X, Y - i), bColor
  195.             i = i + 1
  196.         Loop Until i = 25
  197. End If
  198. errErrors:
  199.     If Err.Number = 28 Then 'stack overflow
  200.         MsgBox "Stack Over flow!" & vbCrLf & "Please reduce draw width size!", vbCritical, "Error"
  201.         Exit Sub
  202.     End If
  203. End Sub
  204.  
  205. Private Sub Form_Unload(Cancel As Integer)
  206. 'make sure to turn the toolbar off or it will stay on
  207. Unload Form2
  208. End Sub
  209.  
  210. Private Sub mnuFileExit_Click()
  211. 'exit!
  212. Unload Me
  213. End Sub
  214.  
  215. Private Sub mnupicClear_Click()
  216. 'clear drawing area
  217. Form1.Cls
  218. End Sub
  219.  
  220. Private Sub mnutbhide_Click()
  221. 'hide toolbar
  222. Form2.Visible = False
  223. End Sub
  224.  
  225. Private Sub mnutbshow_Click()
  226. 'show toolbar and place it to its proper setting
  227. Form2.Visible = True
  228. Form2.Top = Form1.Top
  229. Form2.Left = Form1.Left - Form2.Width
  230. End Sub
  231.